package com.are.manejadores;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.are.entidades.Producto;
import com.are.odisea.db;

public class ManejadorProductos {
	private com.are.entidades.Producto producto;
	private com.are.odisea.db conexion = null;
	public com.are.entidades.Producto getProducto() {
		return producto;
	}
	public void setProducto(com.are.entidades.Producto producto) {
		this.producto = producto;
	}
	public com.are.odisea.db getConexion() {
		return conexion;
	}
	public void setConexion(com.are.odisea.db conexion) {
		this.conexion = conexion;
	}
	public ManejadorProductos(db conexion, Producto producto) {
		super();
		this.conexion = conexion;
		this.producto = producto;
	}
	public ManejadorProductos(db conexion) {
		super();
		this.conexion = conexion;
	}
	
	public ArrayList<Producto> List() throws SQLException {
		ArrayList<Producto> lista = new ArrayList<Producto>();
		String sql ="select * from view_productos order by orden";
		ResultSet rs = conexion.Query(sql);
		while(rs.next()) {
			Producto producto = new Producto();
			producto.setCodigo(rs.getString("codigo"));
			producto.setDescripcion(rs.getString("descripcion"));
			producto.setOrden(rs.getInt("orden"));
			lista.add(producto);
		}
		return lista;
	}

	public ArrayList<Producto> List(String familia) throws SQLException {
		ArrayList<Producto> lista = new ArrayList<Producto>();
		String sql ="select * from view_productos order by orden";
		ResultSet rs = conexion.Query(sql);
		while(rs.next()) {
			String codigo = (String)rs.getString("codigo");
			if (familia.contains(codigo)) {
				Producto producto = new Producto();
				producto.setCodigo(rs.getString("codigo"));
				producto.setDescripcion(rs.getString("descripcion"));
				producto.setOrden(rs.getInt("orden"));
				lista.add(producto);
			}
		}
		return lista;
	}

}
